パラメータの使用
このトピックでは、モデルを作成する際に定義できるパラメータの種類について説明します。パラメータは、値を格納するために使用できるプレースホルダーです。これらは数字、テキスト、または真または偽のような値になることがあります。Eggplant DAIには以下で説明する3つのタイプのパラメータがあります:ステートパラメータ、アクションパラメータ、そしてグローバルパラメータ。
ステートパラメータ
ステートパラメータは、特定のステートとそのステート内のアクションで使用することができます。また、そのステートで呼び出されるスニペットにパラメータを渡したり、そこから受け取ることもできます。
新しいステートパラメータを追加するには、ステートパラメータセクションで新規をクリックします。また、モデルワークスペースでステートを選択して右クリックし、コンテキストメニューから新規パラメータを選択することもできます。次に、以下の選択を使用してステートパラメータを設定します:
-
名前: パラメータに適切な名前を入力します。このフィールドでは二重引用符以外のすべてのUnicode文字を使用することができます。
-
タイプ: リストメニューから適切なパラメータタイプを入力します:
- 整数: この選択では、パラメータを正、負、またはゼロの整数(分数ではない)として定義します。例えば、ユーザーやテストケースの数など、何かの数を重視する場合に、モデル内で整数パラメータタイプを使用します。
- 真または偽: モデルがオンまたはオフ、真または偽、その他の同様の値を必要とする場合にこのデータ型を使用します。
- 実数: 実数データ型には有理数、例えば5、-5、2/3などが含まれます。また、√2のような無理数も含まれます。度数、ラジアン、またはその他の類似情報などの値に対して実数データ型を使用します。
- テキスト: 文字列を格納するため、または許容される文字のリストを文字列として定義するためにこのデータ型を使用します。任意の整数制約、つまり、2、4、8、16があります。これにより、文字列は2、4、8、または16文字になります。他の制 約と同様に、ここでは複数の制約を組み合わせることができます。許容文字の範囲を設定する場合、それらを範囲にする必要があります。例えば、'a':'z'またはリスト"aeiou"です。単引用符と二重引用符が重要であることを覚えておいてください。
- Set: この選択肢では、このパラメータの許可される値のセットを定義できます。ランタイムでEggplant DAIに特定の値リストから値を選択してほしい場合にこの選択肢を使用します。例えば、'春', '夏', '秋', '冬'など。値リストを入力するには、パラメータを右クリックし、コンテキストメニューからEdit Parameter Detailsを選択し、Parameter PropertiesダイアログボックスのValuesセクションを使用して値を設定します。このフィールドではダブルクオーテーションを除くすべてのUnicode文字を使用できます。
- Record: この選択肢を使用すると、Eggplant DAIはCSVファイルに含まれるレコードからパラメータ値を読み取ることができます。CSVファイルを含むディレクトリを特定するには、コントローラー > 環境に移動し、使用中の実行環境を探します。アクションメニューをクリックし、編集を選択してディレクトリパスを確認します。Eggplant DAIがパラメータにアクセスすると、CSVファイルのレコードのうちの1つを選択し、そのパラメータに格納します。
-
生成: リストメニューから適切なパラメータ生成方法を入力します:
- Generated: パラメータタイプに基づいてパラメータの新しい値を生成します。
- Generated Unique: 値を生成しますが、以前に使用された値は再利用できません。
- Generated one-time: 生成された値は一度選択され、その後は選択されません。値はランの間、一定に保たれます。
- Non-generated: 値は生成されず、値を持つように設定する必要があります。
-
Initial Value: このパラメータの初期値を設定します(ある場合)。Recordタイプのパラメータを使用する場合、Initial valueフィールドで選択するオプションによって、レコードが読み取られるべき.csvファイルが決まります。
既存のパラメータを編集するには、それを選択し、State Parametersセクションの情報を更新します。パラメータをさらにカスタマイズするには、パラメータを右クリックし、Edit Parameter Detailsを選択します。パラメータプロパティダイアログボックスでは、初期値や値の範囲、その他の詳細を設定できます。
パラメータを削除するには、State Parametersセクションでパラメータを右クリックし、コンテキストメニューからRemove Parameterを選択します。
アクションパラメータ
アクションパラメータは、ステートとアクションの値をキャプチャし、提供します。アクションにパラメータを追加するには、アクションを右クリックし、リストメニューでNew Parameterを選択します。また、アクションを選択し、右ペインにあるAction ParametersでNewをクリックすることもできます。
レコード: この選択では、Eggplant DAIにCSVファイルに含まれるレコードからパラメータ値を読み取らせることができます。CSVファイルを含むディレクトリを特定するには、Controller > Environmentsに移動し、使用している実行環境を見つけます。アクションメニューをクリックし、編集を選択してディレクトリパスを確認します。Eggplant DAIがパラメータにアクセスすると、CSVファイルからレコードの一つを選択し、パラメータに保存します。 アクションプロパティタブのアクションパラメータセクション
パラメータの生成条件を設定するには、パラメータを右クリックし、コンテキストメニューでEdit Parameter Detailsを選択し、Parameter propertiesダイアログボックスを使用して基準を設定します。
-
パラメータにNameをつけます。このフィールドでは、二重引用符を除くすべてのユニコード文字を使用できます。
-
パラメータ**Type:**を選択します:
-
Integer: この選択肢はパラメータを正、負、またはゼロの整数(分数ではない)として定義します。たとえば、ユーザーやテストケースの数など、何かの数が重要な場合にモデルで整数パラメータタイプを使用します。
-
True or False: モデルがオンまたはオフ、真または偽などのブール値を必要とする場合にこのタイプを使用します。
-
Real: 実数データ型は正と負の整数および小数を受け入れます。度数、ラジアン、またはその他の同様の情報などの値に実数データ型を使用します。
-
Text: このデータ型を使用して文字列を保存します。また、許容される文字リストを文字列として定義するためにテキストデータ型を使用することもできます。このフィールドでは、二重引用符を除くすべてのユニコード文字を使用できます。
-
セット: この選択では、このパラメータに対する許可される値のセットを定義できます。Eggplant DAIに実行時に特定の値リストから値を選択してもらいたい場合、この選択を使用します。例えば:'spring'(春)、'summer'(夏)、'autumn'(秋)、'winter'(冬)。値のリストを入力するには、パラメータを右クリックし、コンテキストメニューからパラメータ詳細の編集を選択し、パラメータプロパティダイアログボックスの値セクションを使用して値を設定します。このフィールドでは二重引用符以外のすべてのUnicode文字を使用することができます。
-
Record: この選択肢を使用すると、Eggplant DAIはCSVファイルに含まれるレコードからパラメータ値を読み取ることができます。CSVファイルを含むディレクトリを特定するには、コントローラー > 環境に移動し、使用中の実行環境を探します。アクションメニューをクリックし、編集を選択してディレクトリパスを確認します。Eggplant DAIがパラメータにアクセスすると、CSVファイルのレコードのうちの1つを選択し、そのパラメータに格納します。
:::注意点
パラメータに値を渡すためにCSVファイルからデータを使用する場合、CSVファイルの行に4つのカンマで区切られた値(例:「春、夏、秋、冬」)が含まれている場合、その行全体がパラメータに渡されます。「秋」など、リストから特定の値のみが必要な場合は、Eggplant Studioのスニペットを使用してパースする必要があります。
:::
-
-
パラメータのInitial valueを設定します。Recordタイプのパラメータを使用する場合、Initial valueフィールドで選択するオプションが、レコードを読み取るべき.csvファイルを決定します。
-
Eggplant DAIに使用して欲しいGeneration方法を設定します:
- Generated: パラメータタイプに基づいてパラメータの新しい値を生成します。
- Generated Unique: 値を生成しますが、以前に使用された値を再利用することはできません。
- Generated one-time: 生成された値は一度選択され、その後は再選択されません。値は実行中一貫して静的です。
- Non-generated: 値は生成されず、値を含むように設定する必要があります。
-
Eggplant DAIが生成するパラメータをさらに定義するために、値グループを追加することができます。1行に1つの定義を使用して、値のグループを値の定義として入力します。
-
Values: このグループエントリの許容値を入力します。以下のようにパラメータ値を定義できます:
- 静的な値、例えば100を入力します。
- 範囲を入力します。例えば、0:100。
- リストを入力します。例えば、0, 2, 4, 6, 8。
-
Weight: このパラメータを生成する際にEggplant DAIが使用する相対的な重みを入力します。例えば、この値グループをパラメータを生成する際に他の値グループと比較して50%の時間(この値グループを使用したい場合)Eggplant DAIが使用 することを希望する場合、このフィールドに50を入力します。
-
Distribution: Eggplant DAIがこのパラメータを生成する際に使用する統計的分布方法を選択します:
- フラット: フラットな統計分布モデルを使用します。
- ノーマル: 正規の統計分布モデルを使用します。
- エッジ: 統計的な外れ値を使用します。
-
Cov grps: Eggplant DAIが値のエントリを分割するために使用するセグメントの数を決定します。Eggplant DAIはデフォルトで10個の等しいセグメントの値から始め、値グループの値を処理してカバレッジグループを提案します。例えば、_0:360_という値を入力した場合、Eggplant DAIは、各カバレッジグループが0から360の値範囲をカバーするために36の可能な値を含む10のカバレッジグループを提案するかもしれません。モデルのニーズを満たすカバレッジグループの値を手動で入力することができます。
-
グローバルパラメータ
グローバルパラメータは、モデルのどこからでもアクセスできるようにするため、ステートとアクションパラメータと同じ目的を果たします。グローバルパラメータは、モデルのすべてのステートとアクションで利用でき、特定のステートやアクションに限定されません。スニペットの入力としてグローバルパラメータを渡すことができます。
新しいグローバルパラメータを追加するには、次の手順に従い ます:
- Model ワークスペースで、アクションやステートを選択せずにキャンバスの任意の場所をクリックします。
- 以下のどちらかの方法を使用します:
- 右クリックして、コンテキストメニューから 新しいパラメータ を選択します。
- 右側に開いている Global Properties タブの Global Parameters で、New をクリックします。
- パラメータの 名前、タイプ、生成 方法、そして 初期値 を入力します。初期値 フィールドは、非生成 方法でのみ有効になります。
既存のグローバルパラメータは、ステートやアクションパラメータと同じ方法で編集や削除が可能です。
Generated または Generated unique 方法の場合、値は、それがスニペットの実行前に定義されているすべてのアクション/ステート実行の開始時に、パラメータ定義のルールに基づいてエンジンによって選択されます。もしGenerated one-time方法の場合、それは一度だけ生成され、その値はモデル実行の残りの部分に残ります。